Skip to content

feat(core): DECOM origin mode with margin and 1049 interaction refs #27 - #301

Merged
JavaZeroo merged 2 commits into
mainfrom
fix/core-decom-origin-r27
Nov 1, 2026
Merged

JavaZeroo merged 2 commits into
mainfrom
fix/core-decom-origin-r27

Conversation

@JavaZeroo

Copy link
Copy Markdown
Owner

有界切片:#27 C++ 核心 DECOM(origin 模式) 及与 margin/1049 交叉

依据 #151 原版报告 全部 25 阶段字面合成源与逐阶段 bare DSR 回复,实现 strict/recovery 两路 CSI ?6h/l:

  • origin 相对寻址:?6h 归位区域左上、?6l 归位屏幕原点;CUP/VPA 行相对区域顶,CUU/CUD 行夹在 [区域顶,区域底],DSR 6n 行相对区域顶(阶段 4–8、19–24 字面锁定)。
  • 与 margin 交互:区域 LF 语义复用既有 DECSTBM(阶段 9–13)。
  • 与 DECAWM 交叉:两个终端级模式位独立共存、互不串扰、都跨 1049 保持;origin×末列 wrap 是模型组合检查(wrap 阶段 14–18 均在 origin 关闭下观察)。
  • 1049 进出 origin 保持:origin 位终端级共享(与 DECAWM 同层),1049 不重置;阶段 19–24 完整回放锁定主/备用 margin 与返回。

验证

  • 新增 decom_origin_core(11/11):25 阶段完整回放逐阶段核对 DSR;strict/recovery 各整体/逐字节/435 二段分割一致;异常序列恢复;RIS 复位;模式独立性。
  • 13 项核心 C++ CTest 全绿(12 项既有 + 新项),0 跳过。
  • Python experiments.core.test_core/test_unicode/test_recovery 66 项通过。
  • 归档 README + validation.json(源码/二进制 SHA、通过/失败/跳过),更新 docs/EVIDENCE.md。

未覆盖(保持未知,不猜测)

  • 每屏 origin 位(原版列为未观测)——本实现采用终端级共享,属保守工程选择。
  • 返回后 margin 下界;origin×末列 wrap;完整 active grid、逐格样式、本地 ConPTY 运输。

refs #27

JavaZeroo added a commit that referenced this pull request Nov 1, 2026
…modes

Bring in main's DECOM origin-mode work (#301) so the DA1 fix can be
CI-tested against current main. Resolves the private-CSI block and test
registration conflicts; both additions are kept.
@JavaZeroo
JavaZeroo merged commit 91a7214 into main Nov 1, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant